/*
  Problem 3. It's Mooin' Time
  Description
    Farmer John is trying to describe his favorite USACO contest to Elsie,
    but she is having trouble understanding why he likes it so much.
    He says "My favorite part of the contest was when Bessie said 'It's Mooin' Time'
    and mooed all over the contest."

    Elsie still doesn't understand so Farmer John downloads the contest as a text
    file and tries to explain what he means. The contest is defined as a string
    of lowercase letters of length N (3 ≤ N ≤ 20000). A moo is generally defined
    as the substring cicjcj where some character ci followed directly by 2 occurrences
    of some character cj where ci≠cj. According to Farmer John, Bessie moos a lot,
    so if some moo appears at least F (1 ≤ F ≤ N) times in the contest, that
    might be from Bessie.

    However, Farmer John's download might have been corrupted, and the text file
    might have up to one character that differs from the original file. Print all
    possible moos that Bessie could have made taking the potential error into
    account, sorted in alphabetical order.

  INPUT FORMAT (input arrives from the terminal / stdin):
    The first line contains N and F, representing the length of the string and
    the frequency threshold for a moo by Bessie.

    The second line contains a string of lowercase letters of length N,
    representing the contest.

  OUTPUT FORMAT (print output to the terminal / stdout):
    Print out the number of possible moos that Bessie makes, followed by a
    lexicographically sorted list of the moos. Each moo should appear on a separate line.

  SAMPLE INPUT:
    10 2
    zzmoozzmoo
  SAMPLE OUTPUT:
    1
    moo
  hint:
    In this case, no character change affects the answer. The only moo Bessie made was "moo".

  SAMPLE INPUT:
    17 2
    momoobaaaaaqqqcqq
  SAMPLE OUTPUT:
    3
    aqq
    baa
    cqq
  hint:
    In this case, the a at position 8 (zero-indexed) could have been corrupted
    from a b which would have resulted in "baa" being a moo that Bessie made twice.
    Alternatively, the q at position 11 could have been corrupted from a c which
    would have resulted in "cqq" being a possible moo that Bessie made. "aqq" can
    be made by swapping the c with an a.

  SAMPLE INPUT:
    3 1
    ooo
  SAMPLE OUTPUT:
    25
    aoo
    boo
    coo
    doo
    eoo
    foo
    goo
    hoo
    ioo
    joo
    koo
    loo
    moo
    noo
    poo
    qoo
    roo
    soo
    too
    uoo
    voo
    woo
    xoo
    yoo
    zoo

  SCORING:
    Inputs 4-8: N ≤ 100
    Inputs 9-13: No additional constraints.

  Problem credits: Suhas Nagar


  是时候了
  题目描述
    农民 John 正试图向 Elsie 描述他最喜欢的 USACO 比赛，但她很难理解他为什么这么喜欢它。
    他说：“比赛中我最喜欢的部分是 Bessie 说‘是时候了’，并在整个比赛中发出嘘声。”

    Elsie 仍然不明白，所以 John 将比赛信息作为文本文件下载下来，并试图解释它的意思。
    比赛被定义为长度为 N（3 ≤ N ≤ 20000）的小写字母串。
    嘘声通常被定义为子字符串 cicjcj，其中字符 ci 的后面紧跟着连续的 2 个字符 cj，其中 ci ≠ cj。
    根据 John 的说法，贝茜经常发出嘘声，所以如果某个嘘声在比赛中至少出现 F 次（1 ≤ F ≤ N），
    那可能是贝茜发出的。

    然而，John 下载下来的文本文件可能已损坏，该文件中可能最多有一个与原始文件不同的字符。
    按字母顺序打印 Bessie (考虑潜在错误的情况下) 可能做出的所有嘘声。
  输入格式
    第一行包含 N 和 F，表示字符串的长度和 Bessie 发出的嘘声的最少次数。
    第二行包含长度为 N 的小写字母串，代表比赛。
  输出格式
    打印出 Bessie 可能发出的嘘声的数量，然后是按字典排序的嘘声列表。每个嘘声都应该出现在单独的行中。
  样例1
    输入
      10 2
      zzmoozzmoo
    输出
      1
      moo
    提示
      本用例中, 字符串中的任意一个字符都有可能损坏, 但是并不影响 Bessie 可能发出嘘声。
  样例2
    输入
      17 2
      momoobaaaaaqqqcqq
    输出
      3
      aqq
      baa
      cqq
    提示
      该用例中，位置 8（从零开始索引）处的 a 可能已经被损坏 (本来是 b)，这种情况下“baa”是 Bessie 两次发出的嘘声。
      或者，位置 11 处的 q 可能已被损坏 (本来是 c)，这种情况下“cqq”成为 Bessie 可能发出的嘘声。
      或者，位置 14 处的 c 可能已被损坏 (本来是 a)，这种情况下“aqq”成为 Bessie 可能发出的嘘声。
  样例3
    输入
      3 1
      ooo
    输出
      25
      aoo
      boo
      coo
      doo
      eoo
      foo
      goo
      hoo
      ioo
      joo
      koo
      loo
      moo
      noo
      poo
      qoo
      roo
      soo
      too
      uoo
      voo
      woo
      xoo
      yoo
      zoo
  数据范围
    Inputs 4-8: N ≤ 100
    Inputs 9-13: 没有其他限制
*/